package com.xm.queue;

import java.util.Queue;
import java.util.concurrent.ConcurrentLinkedQueue;

/**
 * 并发队列
 *   特点：无界、线程安全的非阻塞队列（基于 CAS 实现）。
 *   适用场景：高并发环境下的任务队列。
 */
public class TestConcurrentLinkedQueue07 {
    public static void main(String[] args) {
        Queue<String> concurrentQueue = new ConcurrentLinkedQueue<>();

        //生产者线程
        new Thread(() -> {
            concurrentQueue.offer("Data1");
            concurrentQueue.offer("Data2");
        }).start();

        //消费线程
        new Thread(() -> {
            while (!concurrentQueue.isEmpty()) {
                System.out.println(concurrentQueue.poll());
            }
        }).start();
    }
}
